package DD8;

import java.util.Iterator;
import java.util.TreeSet;

public class ColTest2 {
//	public class Dog implements Comparable {
//
//		int age;
//		String name;
//
//		public Dog(int age, String name) {
//			this.age = age;
//			this.name = name;
//		}
//		public boolean equals(Object o) {
//	        System.out.println("User equals()....");
//	        if (this == o) return true;
//	        if (o == null || getClass() != o.getClass()) return false;
//
//	        Dog user = (Dog) o;
//
//	        if (age != user.age) return false;
//	        return name != null ? name.equals(user.name) : user.name == null;
//	    }
//		public int hashCode() { // return name.hashCode() + age;
//			int result = name != null ? name.hashCode() : 0;
//			result = 31 * result + age;
//			return result;
//		}
//
//		public int comepareTo(Object obj) {
//			if (obj instanceof Dog) {
//				Dog dog = (Dog) obj;
//				int com = this.name.compareTo(dog.name);
//				if (com != 0) {
//					return com;
//				} else {
//					return Integer.compare(this.age, dog.age);
//				}
//			} else {
//				throw new RuntimeException("Wrong type");
//			}
//		}
//	}

	public static void main(String[] args) {
		ColTest2 C1 = new ColTest2();
		C1.TreeTest1();
		C1.TreeTest2();
	}

	public ColTest2() {
		// TODO Auto-generated constructor stub
	}

	public void TreeTest1() {
		TreeSet<String> set1 = new TreeSet<String>();
		set1.add("456");
		set1.add("234");
		set1.add("123");
		set1.add("345");
		set1.add("asd");
		set1.add("567");
		Iterator<String> it = set1.iterator();
		while (it.hasNext()) {
			System.out.println(it.next());
		}
	}

	public void TreeTest2() {
		TreeSet set2 = new TreeSet();
		set2.add(new User("AA", 12));
		set2.add(new User("BB", 3));
		set2.add(new User("CC", 5));
		set2.add(new User("CC", 8));
		Iterator it = set2.iterator();
		while (it.hasNext()) {
			System.out.println(it.next());
		}
	}
}
